package com.jt.controller;


import com.jt.service.FileService;
import com.jt.vo.ImageVO;
import com.jt.vo.SysResult;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

@RestController
@CrossOrigin
@RequestMapping("/file")
public class FileController {


    @Autowired
    private FileService fileService;

    /*文件上传步骤; 1,获取文件上传名称
     *            2,准备文件上传目录
     *            3,准备全文件的路径  目录/文件名
     *             4,实现上传
     */
    @PostMapping("/upload")
    public SysResult  upload(MultipartFile file) throws Exception { //spring 提供了序列化更高级快捷的Api Multipart

        ImageVO imageVO = fileService.upoad(file);
        if (imageVO == null) {
            return SysResult.fail();
        }
        return SysResult.success(imageVO);
    }

//        String fileName=file.getOriginalFilename();
//        /*2准备文件目录  Linux系统不能识别\\  所以我们使用/*/
//        String dirPath="F:/images";
//        File  dirFile=new File(dirPath);
//        if (!dirFile.exists()){
//            dirFile.mkdirs(); //创建多级目录
//        }
//        //拼接文件路径
//        String  filePath= "F:/images/"+fileName;
//        file.transferTo(new File(filePath)); /*io流异常向上抛,实现文件上传*/
//        return SysResult.success();
    @DeleteMapping("/deleteFile")
    public  SysResult deleteFile(String  virtualPath){

        fileService.deleteFilel(virtualPath);
        return  SysResult.success();

    }
}
